第一次參加鐵人賽,目的是為了要砥礪已經工作一年半的自己,在這三十天內透過發布文章的方式,除了學習到新的知識也能加強自己對於整理資料以及文筆表達的能力。
由於小弟我對Docker十分感興趣但是本業是前端工程師,所以不太熟悉偏系統面的知識,還希望來參訪文章的前輩大神們不吝指教,以下開始第一天。
Docker這幾年來一直很熱門,無非是因為他的靈活、輕巧、可擴充性以及跨系統的特性。
這邊簡單介紹一下Docker,Docker是一個平台,使用者在使用Docker時需要透過Docker image建立container,container顧名思義就是用來裝東西的容器,所以可以盡情的將application裝入container裡,而許多container運行時則會成為所謂的Containerized,就像是容器被裝進箱子一般。
傳統Virtual Machines透過虛擬化,除了虛擬OS也可以模擬出hardware,讓一台主機可以擁有多的OS並各具有獨自的hard driver以及network switches,每個OS上只能執行其對應OS的APP。
Docker沒有實現模擬獨自的OS而是直接實作在Host OS也就是實體OS上,並且存放Application的部分以Containers實作,Containers是位於應用層的Abstraction並具有互相依賴的特性,並且多個Containers能夠運行在同個實體上,所以Containers所使用的空間自然就比VM少,也因為無須模擬獨自的OS在建置時也是比較快。
參考文獻:
https://docs.docker.com/get-started/